
package com.cmc.dao;

import java.util.List;

import com.cmc.dao.Dao;
import com.cmc.model.Company;

public interface CompanyDao extends Dao {

    /**
     * Retrieves all of the companys
     */
    public List getCompanys(Company company);

    /**
     * Gets company's information based on primary key. An
     * ObjectRetrievalFailureException Runtime Exception is thrown if 
     * nothing is found.
     * 
     * @param id the company's id
     * @return company populated company object
     */
    public Company getCompany(final Long id);

    /**
     * Saves a company's information
     * @param company the object to be saved
     */    
    public void saveCompany(Company company);

    /**
     * Removes a company from the database by id
     * @param id the company's id
     */
    public void removeCompany(final Long id);
}

